Integration von Hilfethemen in TESTS

Wer seine Hilfetexte mit MS HTML Help Workshop in einer kompilierten Datei *.chm (engl. compiled help) zusammenfasst, kann diese auf zwei Arten mit der Anwendung (zum Beispiel Testverwaltung.mdb oder  Access_Quiz.mdb) verbinden:

  1. Ein Klick auf eine Schaltfläche wie ruft eine Prozedur auf, die ihrerseits eine ActiveX-DLL des MS Help Workshop nutzt. Die Aufrufargumente bestimmen, welches Hilfethema angezeigt wird.

  2. Die Taste F1 zeigt ein Hilfethema an, das zum jeweiligen Kontext passt.

TESTS unterstützt den Anwender ...

Das folgende Beispiel zeigt, wie sich kontextsensitive Hilfe mit dem Help Workshop integrieren lässt. Der Code stammt aus dem Klassenmodul Form_FrmStart von Access_Quiz.mdb. Zuerst schafft er eine Verbindung zur externen Programmbibliothek HHCtrl.ocx, indem er deren Funktion HtmlHelp vereinbart. Dann ruft die Ereignisprozedur der Schaltfläche BtnHilfe diese Funktion auf und übergibt ihr die eingangs vereinbarten vier Argumente, welche die Hilfedatei "TESTS.chm" öffnen und daraus das Hilfethema "Access_Quiz_bearbeiten.htm" anzeigen.

'--- 1. Externe DLL HHCtrl.ocx vereinbaren
'    (ActiveX-Control, das die Integration von Hilfethemen ermöglicht)
Const HH_DISPLAY_TOPIC = &H0
 
Private Declare Function HtmlHelp Lib "HHCtrl.ocx" Alias "HtmlHelpA" _
    (ByVal hwndCaller As Long, _
     ByVal pszFile As String, _    'kompilierte Hilfedatei
     ByVal uCommand As Long, _     'Beschreibung der Hilfeaktion     
     dwData As Any                 'HTML-Datei mit dem Hilfethema
    )
    As Long

'--- 2. In Ziff. 1 vereinbarten Funktion mit konkreten Argumenten aufrufen
Private Sub BtnHilfe_Click()
  Call HtmlHelp(0, "TESTS.chm", HH_DISPLAY_TOPIC, ByVal "Access_Quiz_bearbeiten.htm")
End Sub

Was ändert, wenn aus einem irgendeinem Formular oder Steuerelement Hilfe aufgerufen werden soll?